#ifndef DATATYPES_H
#define DATATYPES_H

#include <iostream>

using namespace std;

enum Material_spec_meta_type {
    INT,
    STRING,
    FLOAT,
    DATE
};

struct Date {
    int year;
    int month;
    int day;
};

struct Auth {
    int id;
    string description;
};
struct Auth_data {
    int user_id;
    int auth_id;
};
struct Charge {
    string id;
    int number;
    string chargeCounter;
    Date start;
    int matId;
    double weight;
    int stateId;
    int placeId;
};
struct Material {
    int id;
    string name;
    int number;
};
struct Material_spec {
    string chargeId;
    string name;
    int int_type;
    string text_type;
    double float_type;
    Date date_type;
};
struct Material_spec_meta {
    int id;
    string name;
    enum Material_spec_meta_type type;
};
struct Places {
    int id;
    string description;
};

struct Producing {
    string id;
    string input;
    double weight;
};
struct State {
    int id;
    string description;
};
struct Users {
    int id;
    string name;
    string password;
};


#endif // DATATYPES_H
